package controlador;

import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.util.List;
import java.util.Vector;

import modelo.JugadorDAO;
import modelo.Nivel;
import modelo.NivelDAO;

import vista.VentanaJugadorModeloTabla;
import vista.VentanaListadoJugador;

public class ControladorVentanaListado implements ActionListener {
	
	private VentanaListadoJugador ventanaListado;
	private NivelDAO nivelDAO = new NivelDAO();;

	public ControladorVentanaListado() {
		super();
		// TODO Auto-generated constructor stub
		ventanaListado = VentanaListadoJugador.getInstancia();
		ventanaListado.setVisible(true);
		ventanaListado.addListener(this);
		ventanaListado.cargarComboNivel(nivelDAO.llenarComboNivel());
	}
	
	private void cargarListadoJugadores(){
		Nivel nivel = new Nivel();
		JugadorDAO jugadorDAO = new JugadorDAO();
		nivel = nivelDAO.buscarNivel(ventanaListado.getComboNivelSeleccionado());
		List<Vector<String>> jugadores = jugadorDAO.cincoConMejorPuntuacion(nivel.getIdnivel());
		this.ventanaListado.setResultados(new VentanaJugadorModeloTabla(jugadores));
	}

	@Override
	public void actionPerformed(ActionEvent e) {
		// TODO Auto-generated method stub
		String actionCommand = e.getActionCommand();
		if (e.getSource() == ventanaListado.getComboNivel()) {
			cargarListadoJugadores();
		}
		else if (actionCommand.equals("Salir"))
			this.ventanaListado.setVisible(false);
	}

}
